
var authority;
var positionID;
function getChecked() {
    var authorityJSON = [];
    var modelName = $("div.layui-input-block .modelName").toArray();//
    x = $("div.layui-input-block hr").toArray();//获取权限块个数
    for (var i = 0; i < x.length; i++) {
        //console.log(modelName[i]);//测试输出
        switch (modelName[i].id) {
            case "basicManagement" :
                //获取所有选中的值，将其用逗号隔开
                var basicManagement ="";
                //var name = "basicManagement"//查看结果输出
                //var result = "";//查看结果输出
                $('input[type="checkbox"][class="basicManagement"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        basicManagement += $(this).val();
                    }
                });
                var BM = {id:"1",subright:basicManagement};
                //authorityJSON[1] = BM;
                authorityJSON.push(BM);
                break;
            case "dataDir" :
                var dataDir = '';
                $('input[type="checkbox"][class="dataDir"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        dataDir += $(this).val();
                    }
                });
                var dD = {id:"6",subright:dataDir};
                authorityJSON.push(dD);
                break;
            case "organization" :
                var organization = '';
                $('input[type="checkbox"][class="organization"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        organization += $(this).val();
                    }
                });
                var org = {id:"7",subright:organization};
                authorityJSON.push(org);
                break;
            case "projectManagement" :
                var projectManagement = '';
                $('input[type="checkbox"][class="projectManagement"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        projectManagement += $(this).val();
                    }
                });
                var pM = {id:"9",subright:projectManagement};
                // authorityJSON[9] = pM;
                authorityJSON.push(pM);
                break;
            case "authorityManagement" :
                //获取所有选中的值，将其用逗号隔开
                var authorityManagement = '';
                $('input[type="checkbox"][class="authorityManagement"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        authorityManagement += $(this).val();
                    }
                });
                var aM = {id:"52",subriht:authorityManagement};
                // authorityJSON[52] = aM;
                authorityJSON.push(aM);
                break;
            case "standardLibrary" :
                //获取所有选中的值，将其用逗号隔开
                var standardLibrary = '';
                $('input[type="checkbox"][class="standardLibrary"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        standardLibrary += $(this).val();
                    }
                });
                var sL = {id:"2",subright:standardLibrary};
                // authorityJSON[2] = sL;
                authorityJSON.push(sL);
                break;
            case "inspectionType" :
                //获取所有选中的值，将其用逗号隔开
                var inspectionType = '';
                $('input[type="checkbox"][class="inspectionType"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        inspectionType += $(this).val();
                    }
                });
                var iT = {id:"10",subright:inspectionType};
                // authorityJSON[10] = iT;
                authorityJSON.push(iT);
                break;
            case "insepectionFunction" :
                //获取所有选中的值，将其用逗号隔开
                var insepectionFunction = '';
                $('input[type="checkbox"][class="insepectionFunction"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        insepectionFunction += $(this).val();
                    }
                });
                var iF = {id:"11",subright:insepectionFunction};
                //authorityJSON[11] = iF;
                authorityJSON.push(iF);
                break;
            case "insepectionStander" :
                //获取所有选中的值，将其用逗号隔开
                var insepectionStander = '';
                $('input[type="checkbox"][class="insepectionStander"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        insepectionStander += $(this).val();
                    }
                });
                var iS = {id:"12",subright:insepectionStander};
                //authorityJSON[12] = iS;
                authorityJSON.push(iS);
                break;
            case "insepectionItems" :
                //获取所有选中的值，将其用逗号隔开
                var insepectionItems = '';
                $('input[type="checkbox"][class="insepectionItems"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        insepectionItems += $(this).val();
                    }
                });
                var iI = {id:"13",subright:insepectionItems};
                //authorityJSON[13] = iI;
                authorityJSON.push(iI);
                break;
            case "businessManagement" :
                //获取所有选中的值，将其用逗号隔开
                var businessManagement = '';
                $('input[type="checkbox"][class="businessManagement"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        businessManagement += $(this).val();
                    }
                });
                var busiM = {id:"3",subright:businessManagement};
                // authorityJSON[3] = busiM;
                authorityJSON.push(busiM);
                break;
            case "taskManagement" :
                //获取所有选中的值，将其用逗号隔开
                var taskManagement = '';
                $('input[type="checkbox"][class="taskManagement"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        taskManagement += $(this).val();
                    }
                });
                var tM = {id:"14",subright:taskManagement};
                //authorityJSON[14] = tM;
                authorityJSON.push(tM);
                break;
            case "taskInfo" :
                //获取所有选中的值，将其用逗号隔开
                var taskInfo = '';
                $('input[type="checkbox"][class="taskInfo"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        taskInfo += $(this).val();
                    }
                });
                var tI = {id:"21",subright:taskInfo};
                // authorityJSON[21] = tI;
                authorityJSON.push(tI);
                break;
            case "qualityDiagnosisManagement" :
                //获取所有选中的值，将其用逗号隔开
                var qualityDiagnosisManagement = '';
                $('input[type="checkbox"][class="qualityDiagnosisManagement"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        qualityDiagnosisManagement += $(this).val();
                    }
                });
                var qDM = {id:"15",subright:qualityDiagnosisManagement};
                // authorityJSON[15] = qDM;
                authorityJSON.push(qDM);
                break;
            case "qualityDiagnosisType" :
                //获取所有选中的值，将其用逗号隔开
                var qualityDiagnosisType = '';
                $('input[type="checkbox"][class="qualityDiagnosisType"]:checked').each(function (index, value) {
                    if ($(value).val() != 'on') {
                        qualityDiagnosisType += $(this).val();
                    }
                });
                var qDT = {id:"24",subright:qualityDiagnosisType};
                // authorityJSON[24] = qDT;
                authorityJSON.push(qDT);
                break;
            default:
                break;
        }

    }
    var submit = {position:positionID,right:authorityJSON}
    var submitJSON = JSON.stringify(submit);
    console.log(submitJSON);
    // console.log(authorityJSON);//测试输出
    // var resultJSON = JSON.stringify(authorityJSON);
    // console.log(resultJSON);//测试输出
    $(document).ready(function () {
        $.ajax({
            type: "POST",
            url: "http://qsmas.bingfeng0306.top/pc/right/sysPositionRight/addData",
            contentType: "application/json;charset=utf-8",
            data: submitJSON,
            dataType: "json",
            success: function (message) {
                alert("提交成功" + JSON.stringify(message));
            },
            error: function (message) {
                alert("提交失败" + resultJSON);//测试输出
            }
        });
    });
}
//Demo
    layui.use('form', function () {
        var form = layui.form;


        //取得父页面url参数
        function getUrlParam(name) {//封装方法
            var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
            var r = window.location.search.substr(1).match(reg); //匹配目标参数
            if (r != null) return unescape(r[2]);
            return null; //返回参数值
        }

        var roleID = getUrlParam("roleID");
        positionID= roleID;
        // console.log(roleID);
        var roleName = getUrlParam("roleName");
        // console.log(roleName);
        document.getElementById("h1title").innerHTML = roleName;//显示所在角色页面

        //ajax实现读取json文件
        $.ajax({
            url: "../../json/Authority.json",
            type: "post",//这里的数据量超过 get 的最大传输量了， 用get只能拿到前16个数据
            datatype: "json",
            success: function (data) {//请求成功后执行的函数
                var authority;  //用一个变量来接收json数据
                authority = data;
                // console.log(authority.data[25].submit[0]); //测试输出
                // console.log(authority.data[25].submit[1]); //测试输出
                // console.log(authority.data[0]);  //测试输出
                // console.log(authority.data.length);  //测试输出
                // console.log(authority.data);  //测试输出
                // console.log(authority.data);  //测试输出
                //动态更改form表单复选框选中状态
                for (var i = 0; i < authority.data.length; i++)//外层循环，遍历data中的数组元素
                {
                    var index = authority.data[i].id;
                    switch (index) {//根据id选择对应的复选框区域
                        case "1":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {

                                        $(":checkbox[class='basicManagement'][value='" + j + "']").prop("checked", true);
                                        // console.log($(":checkbox[class='basicManagement'][value='"+j+"']").val());
                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='basicManagement'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "2":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='standardLibrary'][value='" + j + "']").prop("checked", true);
                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='standardLibrary'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "3":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='businessManagement'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='businessManagement'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "4":
                            break;
                        case "5":
                            break;
                        case "6"://数据字典
                            // console.log(index);//测试输出
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                // console.log(authority.data[i].submit[j]);//测试输出
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    // console.log(j);
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='dataDir'][value='" + j + "']").prop("checked", true);//选择class=dataDir且value=数组下标的 checkbox元素

                                    })
                                } else {//值为0，更改为未选
                                    // console.log(-j);//测试输出
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='dataDir'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "7":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='organization'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='organization'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "8":
                            break;
                        case "9":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='projectManagement'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='projectManagement'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "10":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='inspectionType'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='inspectionType'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "11":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='insepectionFunction'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='insepectionFunction'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "12":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='insepectionStander'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='insepectionStander'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "13":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='insepectionItems'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='insepectionItems'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "14":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='taskManagement'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='taskManagement'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "15":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='qualityDiagnosisManagement'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='qualityDiagnosisManagement'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "16":
                            break;
                        case "18":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='taskType'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='taskType'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "19":
                            break;
                        case "20":
                            break;
                        case "21":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='taskInfo'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='taskInfo'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "22":
                            break;
                        case "23":
                            break;
                        case "24":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='qualityDiagnosisType'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='qualityDiagnosisType'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        case "25":
                            break;
                        case "52":
                            for (var j = 0; j < authority.data[i].submit.length; j++)//内层循环，遍历数组中的元素
                            {
                                if (authority.data[i].submit[j] === "1")//判断该复选框是否被选中
                                {
                                    //值为1，则更改为选中
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='authorityManagement'][value='" + j + "']").prop("checked", true);

                                    })
                                } else {//值为0，更改为未选
                                    $('.dataDir').each(function () {
                                        $(":checkbox[class='authorityManagement'][value='" + j + "']").prop("checked", false);
                                    })
                                }
                            }
                            break;
                        default:
                            break;
                    }
                }
                form.render();//重新渲染数据
            }
        });

        form.on('checkbox', function (data) {
            // console.log(data.elem); //得到checkbox原始DOM对象
            // console.log(data.elem.checked); //是否被选中，true或者false
            // content = data.elem;
            //console.log(data.value); //复选框value值，也可以通过data.elem.value得到
            // console.log(data.othis); //得到美化后的DOM对象
        });

        //监听提交
        form.on('submit', function (data) {
            getChecked();
            // console.log(data.elem) //被执行事件的元素DOM对象，一般为button对象
            // console.log(data.form) //被执行提交的form对象，一般在存在form标签时才会返回
            // console.log(data.field) //当前容器的全部表单字段，名值对形式：{name: value}
             return false; //阻止表单跳转。如果需要表单跳转，去掉这段即可。
        });
    });
